#include <stdio.h>
#include <unistd.h>
#include <sys/stat.h>
#include <sys/types.h>
#include <stdlib.h>

int main()
{
    for(int i = 0; i < 8; i++) {
        printf("parent i = %d\n", i);
    }
    
    // 创建子进程
    pid_t pid = fork();

    // 子进程执行 ls
    if(pid == 0) {
        // ls -la 使用的是子进程的地址空间
        // execl("/bin/ls", "666", "-lah", NULL);  --> 通常不会这么写
        // execl("/bin/ls", "ls", "-lah", NULL);
        execl("/home/xiaodi/Code/C-TEST/apue/process/1-parent", "parent", NULL);  // 不需要参数
    }

    // 由父进程实现
    for(int i = 0; i < 3; i++) {
        printf("+++++++ i = %d\n", i);
    }

    return 0;
}

